package com.info.zhiduoduo.repository.entity.maker;

import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;

import java.io.Serializable;
import java.util.Date;

import lombok.Data;
import lombok.experimental.Accessors;

/**
 * <p>
 * 创客银行卡(信用卡)，一个创客可以绑定一张个人账户银行卡，一张企业账户银行卡
 * </p>
 *
 * @author bob
 * @since 2019-08-03
 */
@Data
@Accessors(chain = true)
@TableName("zdd_maker_bankcard")
public class MakerBankcard extends Model<MakerBankcard> {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;
    private Integer userid;
    /**
     * 银行卡持有人
     */
    private String payername;
    /**
     * 1.储蓄卡 2信用卡
     */
    private Integer cardtype;
    /**
     * 开户行名称
     */
    private String bankname;
    /**
     * 开户行行号，企业账户需要填，个人账户不需要
     */
    private String bankno;
    /**
     * 开户行网点
     */
    @TableField("open_acct_bank_name")
    private String openAcctBankName;
    /**
     * 卡号
     */
    private String acctno;
    /**
     * 银行卡名称（牡丹卡/长城卡等各个银行的卡片名）
     */
    private String cardName;
    /**
     * 开户省份
     */
    private String province;
    /**
     * 开户城市
     */
    private String city;
    /**
     * 账户类型： 1:个人账户  2:企业账户
     */
    private Integer accttype;
    /**
     * 银行卡预留电话
     */
    private String telephone;
    /**
     * 持有人身份证
     */
    private String idno;
    /**
     * 信用卡安全码
     */
    private String cvv2;
    /**
     * 信用卡有效期
     */
    private String acctvaliddate;
    /**
     * 1.默认 0非默认
     */
    private Integer defaultcard;
    /**
     * 1.正常 2失效
     */
    private Integer state;
    /**
     * 排序默认0 
     */
    private Integer sort;
    private Date createtime;

    /**
     * 共青城保存银行卡号返回的ID
     */
    @TableField("yunkong_id")
    private String yunkongId;
    /**
     * 共青城保存的银行卡号
     */
    @TableField("yunkong_acctno")
    private String yunkongAcctno;

    /**
     * 像共青城推送银行卡信息失败原因
     */
    @TableField("puch_bank_card_error_msg")
    private String puchBankCardErrorMsg;
    /**
     * 支付宝账号
     */
    @TableField("alipay_account")
    private String alipayAccount;
    /**
     * 打款账号状态 0:银行卡 1:支付宝
     */
    @TableField("payment_account_status")
    private Integer paymentAccountStatus;


    @Override
    protected Serializable pkVal() {
        return this.id;
    }

}
